package com.tengju.bff.interfaces.manage.platform.message.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
import java.util.List;

/**
 * @author: 李大仙
 * @date: 2021/6/8 3:45 下午
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "MessageContentVO", description = "消息对象实体")
public class MessageContentVO {

    @ApiModelProperty(value = "消息ID")
    private Long messageId;

    @ApiModelProperty(value = "消息标题")
    @NotNull(message = "消息标题不能为空")
    private String title;

    @ApiModelProperty(value = "消息分类")
    @NotNull(message = "消息分类不能为空")
    private Integer messageType;

    @ApiModelProperty(value = "展现形式")
    @NotNull(message = "展现形式不能为空")
    private Integer contentType;

    @ApiModelProperty(value = "图片")
    private String imgUrl;

    @ApiModelProperty(value = "文本内容")
    private String content;

    @ApiModelProperty(value = "文本内容")
    private String jumpUrl;

    @ApiModelProperty(value = "用户定向类型 1 所有用户 2 指定用户 3 指定星级")
    private Integer orientationType;

    @ApiModelProperty(value = "定向用户")
    private List<Object> orientationObjectList;

    @ApiModelProperty(value = "是否推送")
    private boolean push;

    @ApiModelProperty(value = "发送状态")
    private Integer sendStatus;
    @ApiModelProperty(value = "发送状态描述")
    private String sendStatusDesc;

    @ApiModelProperty(value = "发送时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    private LocalDateTime sendTime;
}
